

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>
	FFQueue - Free &amp; comprehensive GUI for FFMpeg
</title><link rel="Shortcut Icon" href="Gfx/favicon.ico" /><style id="PrintStyleSheet" type="text/css">
        html, body
{
    width: 100%;
    height: 100%;
    margin: 0px;
    padding: 0px;
}

body
{
    background-color: white;
    font-family: Verdana, Arial;
    font-size: 13pt;
    color: Black;
}

div
{
    padding: 0px;
    margin: 0px 0px 20px 0px;
}

div.qna
{
    margin: 0px 0px 5px 0px;
}

div.qna div
{
    display: none;
    margin: 0px 0px 20px 20px;
}

pre.license
{
    border: 1px solid #777777;
    background-color: #eeeeee;
    margin: 10px 0px 10px 0px;
    padding: 5px;
    height: 200px;
    overflow-y: scroll;
    white-space: pre-line;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
}

span.wrap
{
    display: none;
}

div.content
{
    width: 80%;
    margin: 0px auto 0px auto;
    padding: 0px 10px 0px 10px;
}

div.center
{
    text-align: center;
}

div.error
{
    color: Red;
    font-weight: bold;
}

div.success
{
    color: Green;
    font-weight: bold;
}

div.download_win
{
    border: 1px solid #aaaaff;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    padding: 5px;
    background: #ddddff;
}

div.download_lin
{
    border: 1px solid #aaaa00;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    border-radius: 6px;
    padding: 5px;
    background: #ffffcc;
}

form b
{
    display: block;
    margin-top: 10px;
}

form input.textfield
{
    font-family: Monospace;
    font-size: 14pt;
    width: 100%;
}

form textarea
{
    font-family: Monospace;
    font-size: 14pt;
    width: 100%;
}

ul
{
    font-size: 11pt;
}

li.vid
{
    color: #000077;
}

li.aud
{
    color: #007700;
}

li.cust
{
    color: #007777;
}

a.ff, a.ff:visited, a.ff:active
{
    font-weight: bold;
    text-decoration: none;
    color: Maroon;
    font-family: Monospace;
}

h1, h2, h3, h4
{
    font-family: Tahoma, Verdana, Arial;
}

h3
{
    margin: 15px 0px 10px 0px;
}

h4
{
    margin: 10px 0px 5px 0px;
}

@media only screen and (max-width: 700px) 
{
    
  div.header, div.menu, div.content
  {
    width: 100%;
    padding: 0px;
  }
  
  div.menu span
  {
      display: none;
  }
  
}</style><meta name="keywords" content="ffqueue, ffmpeg, gui, filter, free, freeware, encoding, decoding, audio, video, mpeg4, mp4, mp3, h264, x264, h265, x265, avi, mkv" /><meta name="description" content="FFQueue is a FREE and comprehensive GUI for the FFMpeg command line encoder: Convert audio and video from everything to everything!" />
    <!--meta name="viewport" content="width=600, initial-scale=1" /-->
    <meta name="viewport" content="width=600" />
</head>
<body id="top">

    

    <div class="content">
        
        

<h2><span>Documentation</span></h2>

<div>
    In this documentation there will - wherever it makes sense - be linked to the appropriate ffmpeg documentation
    with a link like: <a href="#" class="ff">ffmpeg <i>-XXX</i></a>. If possible the link takes you directly to the
    used command line option in the ffmpeg documentation - else how to the section where the option is located. You
    can also get more information about ffmpeg in general by visiting <a href="https://www.ffmpeg.org/"
    target="_blank">the ffmpeg documentation</a>.
</div>

<div id="links">
    <b>Help needed for:</b>
    <blockquote>
        <a href="#main">Main window</a><br />
        <a href="#cfg">Options</a><br />
        <a href="#jobedit">Job editor</a><br />
        <a href="#batchmake">Batch make</a><br />
        <a href="#timeedit">Time editor</a><br />
        <a href="#presetmgr">Preset manager</a><br />
        <a href="#presetedit">Preset editor</a><br />
        <a href="#thumbmake">Thumb maker</a><br />
        <a href="#concat">Make slideshow / concat</a><br />
        <a href="#vidstab">Two pass video stabilization</a><br />
        <a href="#vid2gif">Convert video to GIF</a><br />
        <a href="#lang">Language editor</a>
    </blockquote>
</div>

<div id="main">
    
    <h3>Main window</h3>

    <div>
        <b>[Add..]</b> Used to add a new job to the queue. See <a href="#jobedit">Job editor</a>.<br />
        <b>[Batch...]</b> Used to add multiple new jobs to the queue. See <a href="#batchmake">Batch make</a>.<br />
        <b>[Remove]</b> Removes selected job(s) from the queue.<br />
        <b>[Edit...]</b> Edit selected job. See <a href="#jobedit">job editor</a>.<br />
        <b>[Preview]</b> Attempts to launch a preview of the encoded output(*).<br />
        <b>[Start]</b> Starts processing the job(s) in the queue.<br />
        <b>[Stop]</b> Stops processing the job(s) currently being processed.<br />
        <b>[Tools]</b> Drop down menu to select a tool to launch. See <a href="#thumbsmake">Thumb maker</a>, 
                       <a href="#concat">Make slideshow / concat</a> and <a href="#vidstab">Two pass
                       video stabilization</a>.<br />
        <b>[Presets...]</b> Opens the <a href="#presetmgr">preset manager</a> where you can modify presets.<br />
        <b>[Options...]</b> Opens the <a href="#cfg">options window</a> where you can specify how FFQueue should behave.<br />
        <b>[About...]</b> Displays information about FFQueue, FFmpeg and more.
    </div>

    <div>
        (*) This feature requires ffplay to be bundled with FFmpeg or an alternate player to be defined in
        <a href="#cfg">options</a>. This feature might not work as intended since the speed of the processor must be
        sufficient to encode the video at least as fast as it plays. If the processor is too slow the video will be
        lagging. Improper use of some filters might also cause the preview function to fail.
    </div>

    <h4>Queue list</h4>

    <div>
        The upper listing in the main window is used to display the jobs that are actually in the queue. The first column
        displays the name of the primary file that should be processed. The second column displays either the selected preset
        that should be used for processing the job, the user defined command line to use or the tool that has created the job.
        The third column displays the status of the job and they are:
    </div>

    <ul>
        <li><b>Dormant:</b> The job i waiting to be queued.</li>
        <li><b>Queued:</b> The job is queued and waiting to be processed.</li>
        <li><b>Active:</b> The job is currently being processed.</li>
        <li><b>1st pass:</b> The job is undergoing first pass.</li>
        <li><b>2nd pass:</b> The job is undergoing second pass.</li>
        <li><b>Thumbs:</b> Thumbnails are being created for the job.</li>
        <li><b>Done:</b> The job has completed successfully.</li>
        <li><b>Failed:</b> The job has terminated unsuccessfully.</li>
        <li><b>Aborted!:</b> The job was not completed because the queue was aborted.</li>
        <li><b>Skipped!:</b> The job was skipped because the output file already existed and overwriting was refused.</li>
    </ul>

    <div>
        You can use the following keyboard keys and shortcuts in the queue list:
        <ul>
            <li><code>[Keypad +]</code> or <code>[Insert]</code> Creates a new job</li>
            <li><code>[Keypad -]</code> or <code>[Delete]</code> Delete selected job(s)</li>
            <li><code>[Enter]</code> or <code>[Space]</code> Edit selected job</li>
            <li><code>[CTRL]+[Enter]</code> or <code>[CTRL]+[Space]</code> Preview selected job</li>
            <li><code>[CTRL]+[Up]</code> Move selected job(s) up</li>
            <li><code>[CTRL]+[Down]</code> Move selected job(s) down</li>
            <li><code>[CTRL]+[Q]</code> Queue selected job(s)</li>
            <li><code>[CTRL]+[A]</code> Abort / stop selected job(s)</li>
            <li><code>[CTRL]+[B]</code> Batch make jobs</li>
            <li><code>[CTRL]+[O]</code> Options</li>
            <li><code>[CTRL]+[P]</code> Preset manager</li>
            <li><code>[CTRL]+[T]</code> Tool menu</li>
            <li><code>[CTRL]+[S]</code> Save jobs</li>
        </ul>
    </div>
    
    <div>
        <small>
            <b>TIP:</b> Right-click the queue list to invoke a menu with more features like move items up or
            down, start selected jobs only, dump raw output from ffprobe, show command(s) for the selected job,
            direct edit of preset for selected job etc.
        </small>
    </div>

    <div>
        <small>
            <b>TIP:</b> You can drag&amp;drop files to the queue list to invoke the <a href="#batchmake">Batch make</a>
            dialog for the files being dropped.
        </small>
    </div>


    <h4>Console</h4>

    <div>
        The console displays messages from FFQueue and output from FFmpeg in color coding:
    </div>

    <ul>
        <li><b style="color:#777777">Gray:</b> used to display informative messages from FFQueue.</li>
        <li><b>Black:</b> used to display informative messages from FFQueue and FFmpeg.</li>
        <li><b style="color:#0000ff">Blue:</b> used to display regular output from FFmpeg.</li>
        <li><b style="color:#ff0000">Red:</b> used to display errors or warnings from FFQueue and FFmpeg.</li>
        <li><b style="color:#007700">Green:</b> used to display statistics from FFmpeg.</li>
        <li><b style="color:#FF6600">Orange:</b> less important warnings.</li>
        
    </ul>

    <h4>Progress bar</h4>

    <div>
        Displays the progress of the current job if possible. If the progress bar does not show the correct
        progress there might be a problem with the encoding procedure - often seen related to burn-in of
        subtitles.
    </div>

    <h4>Status bar</h4>

    <div>
        Displays the current status of FFmpeg and the queue. During processing of a job the remaining
        time is displayed if possible (requires the progress bar to be updated properly - see above).
    </div>

</div>


<div id="cfg">

    <h3>Options</h3>
    <div>
        FFQueue saves its configuration to a file. If you want to backup both configurations and queued jobs
        you can open the "About" dialog where the location of configuration file is displayed.
    </div>

    <h4>Path to ffmpeg...</h4>
    <div>
        If FFQueue is not placed in the same folder as FFmpeg and FFmpeg cannot be located in any other obvious
        location you must specify the location of the FFmpeg and FFprobe binaries / executables in this field.
        Click the [...] button next to the text field to browse for the executables.
    </div>

    <h4>Custom player for preview...</h4>
    <div>
        In this field you can enter the path to a custom media player that should be used instead of ffplay for
        previewing jobs. The player must support input through pipes (like <a href="http://www.videolan.org/"
        target="_blank">VLC Media Player</a>).
        Click the [...] button next to the text field to browse for a media player.
    </div>

    <h4>Temporary path...</h4>
    <div>
        For most users the "System default" is the best option. But you can change the location to the
        destination folder of the individual jobs/commands (the folder in where the output file is created
        to) or you can specify a custom path. The temporary path is used for 2 pass logfiles and other
        temporary files like scaled images (the slideshow tool) and such. FFQueue will automaticly remove
        any temporary files and / or folders created.
    </div>

    <h4>Automatically find secondary files...</h4>
    <div>
        In this field you can specify one or more extensions that will be searched for as secondary input
        files when jobs are created. You must separate the extensions with comma and leave out any extension
        separator.
    </div>

    <h4>Pattern used to generate output names</h4>
    <div>
        By default FFQueue will generate an output name wich consists the name of the first input file and
        a preffered format. If you want to change this behaviour you can change the output name pattern in
        this field. You have the following variables available:
        <blockquote>
            <code><b>&lt;file_name&gt;</b></code> The file name of the first input file without the
            file format/extension.</br>
            <code><b>&lt;file_format&gt;</b></code> The format/extension of the first input file.</br>
            <code><b>&lt;preferred_format&gt;</b></code> The preferred format as detected by FFQueue.</br>
            <code><b>&lt;preset_name&gt;</b></code> The name of the selected preset.</br>
        </blockquote>
    </div>

    <h4>Custom console command</h4>
    <div>
        If you want to define a (set of) custom console command(s) for previewing etc. you can use this
        field. The command(s) should be declared as <code>execute and close||execute and keep</code>. The
        default commands are:
        <blockquote>
            <b>Windows:</b> <code>cmd /c "%s"||cmd /k "%s"</code><br />
            <b>Linux:</b> <code>xterm +hold -e '%s'||xterm -hold -e '%s'</code>
        </blockquote>
        The quoted C-style string formatting specifier "%s" (or '%s' for Linux) marks the spot where FFQueue
        will insert the command to execute. If you omit the "||" separator and therefore only declare one
        command, like: <code>xterm +hold -e '%s'</code> then you will break the functionality of the "Keep
        console open" option.
    </div>

    <h4>Save unprocessed jobs on exit...</h4>
    <div>
        Check this field if you want FFQueue to save the jobs in the queue when the application is closed -
        the jobs will then be reloaded upon startup. The jobs are stored in the same location as other configuration
        but in a *.job file rather than a *.cfg file. If this field is unchecked the queue list will always
        be empty on startup.
    </div>

    <h4>Save jobs whenever they are modified</h4>
    <div>
        Check this field if you want to force FFQueue to save the jobs in the queue whenever they are modified.
    </div>

    <h4>Automatically remove processed jobs...</h4>
    <div>
        If this field is checked the jobs in the queue that has successfully been processed will be removed
        when the queue finishes (or is aborted).
    </div>

    <h4>Remove jobs with non-existing input files during startup</h4>
    <div>
        If enabled, jobs with non-exiting input files will be removed during FFQueue startup. The removed jobs
        will be listed in the console.
    </div>

    <h4>Limit statistics...</h4>
    <div>
        Check this field to limit statistics from FFMpeg to the last five lines which makes the content in
        the console much easier to review. Uncheck this field to display all output from FFMpeg (beware of
        memory consumption on long jobs).
    </div>

    <h4>Show banner info...</h4>
    <div>
        If you want advances information about ffmpeg to be shown for each job being processed you can
        check this field. The banner information can be found in the About-box as well.
    </div>

    <h4>Save position...</h4>
    <div>
        If checked the position and size of the main window will be saved when FFQueue is terminated.
        When starting FFQueue next time the saved position will be restored.
    </div>

    <h4>Enable full codec listings...</h4>
    <div>
        It this field is ticked you will be able to select all supported codecs for audio and video. If
        unticked you will only have the most common codecs listed. See <a href="#about_codecs">About
        encoding &amp; codecs</a> for more info.
    </div>

    <h4>Always suggest unique names...</h4>
    <div>
        You can tick this field if you want FFQueue to suggest unique names. If not ticked FFQueue will
        suggest the most likely name as output file - no matter if it exists or not. If ticked FFQueue
        will append "_<i>N</i>" to file names where <i>N</i> is an incremental number until a non-existing
        name is found.
    </div>

    <h4>Keep console open...</h4>
    <div>
        If this options is ticked the console window will remain open after a preview command finishes.
        This is usefull to prevent the console from "flashing" due to an encoding or command error. Note
        that this feature might be broken if custom console command is not declared correct.
    </div>

    <h4>Silent queue finish</h4>
    <div>
        Tick this field if you do not want FFQueue to show a message when the queue finishes procssing.
    </div>

    <h4>Confirm removal of jobs</h4>
    <div>
        If you do not want a confirmation prompt whenever you remove jobs from the queue, you can un-tick
        this box.
    </div>

    <h4>Always map subtitles when previewing</h4>
    <div>
        Usually previewing will fail if subtitles are mapped, so since V1.7.54 they are not mapped by
        default. If you want to map them anyway this option will allow you to.
    </div>

    <h4>Language...</h4>
    <div>
        Click this button to open the <a href="#lang">Language editor</a>. In Linux the options dialog
        is cancelled before the Language editor is launched.
    </div>

</div>

<div id="jobedit">

    <h3>Job editor</h3>

    <h4>Input files <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -i</a></h4>
    <div>
        Each tab contains one input/source file and the associated parameters for that file. You can have multiple
        source files like a video file, one or more audio file(s), one and more subtitle file(s). You should
        always use the first tab (#1) for the primary source file (video). You can specify the following arguments
        for each input file:
    </div>

    <div>
        <b>Path</b><br />
        Enter a valid file name in this field or click the [...] button to the right if you want to browse for one.
    </div>

    <div>
        <b>Process stream(s) in #<i>n</i> from..</b> <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -ss</a> <code>(before -i)</code><br />
        Click this link to define an offset in the input file from where to start the encoding. The time specified will
        be skipped (cut away) from the beginning of the source file. See <a href="#timeedit">Time editor</a> for more information.
    </div>

    <div id="advcuts">
        <b>[Adv. cuts] (Advanced cutting, requires input file to be valid)</b><br />

        This opens a dialog where you can specify parts of the input file that should be removed or kept. This
        works both for video, audio and video+audio - but if a subtitle stream (or other stream types) are present
        it will fail. Also, the cutting requires re-encoding for the streams being cut. If you select a preset where
        the "copy" codec (remuxing) is selected for one of the streams being cut it will not be applied. Another
        important notice is that all cuts are performed relatively to the <b>Process stream(s) in #<i>n</i> from..</b>
        time and this can cause unpredicatble behaviour and you should refreign from use both in combination unless
        you really know what you are doing.

        <br /><br />

        All time fields in this dialog supports the formats [Hours]:[Minutes]:[Seconds].[Milliseconds] OR simply
        just [Seconds].[Milliseconds].

        <blockquote>

            <div>
                <b>Time spans to process</b><br />
                This list contains a list of "from -&gt; to" time spans to process. If you click an item
                in the list the time span will be transferred to the "From" and "To" fields. Below the list you can
                select if the time spans should be removed or kept. You can also select if the trim filters used for
                trimming should be placed first or last in the filter chain. If you have filters that depends on time
                line you should place the filters last, in any other situation you should place them first since this
                is faster.

                <br /><br />
                
                If you select to remove time spans you must use the following pattern:

                <br /><br />
                <code>[++++++++++----------++++++++++]</code><br />
                <code>[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;F&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;]</code>
                <br /><br />

                And if you want to keep the time spans you must use the following pattern:
                
                <br /><br />
                <code>[++++++++++----------++++++++++]</code><br />
                <code>[F&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;F&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;T]</code>
                <br /><br />

                Both examples above will produce the same result.

                <br /><br />
                <small>
                <code>+</code> = frames included in period to keep.<br />
                <code>-</code> = frames included in period to remove.<br />
                <code>F</code> = from time.<br />
                <code>T</code> = to time.<br />
                </small>
            </div>

            <div>
                <b>Time span</b><br />
                In the "From" field you must specify the time of the first frame that should be included in the
                time span, if left empty "0" (the beginning) is assumed. "To" is the the time of the last frame
                processed, if left empty the duration of the input file is assumed.
                <br />Click [+] or press [Enter] (while in one of the fields) to add the time span.
                <br />Click the [-] button to remove the selected time span from the list.
                <br />In order to edit a time span, click it in the list, edit it, click [-] and click [+].
                <br />Tick the "convert frame index to time.." if you have entered a frame number that
                you want to convert to a time value which is based on the input files FPS. If your input file
                has 25 FPS and you enter the frame number 1000 the time added will be (1000 / 25) = 40 seconds.
                The field will be disabled if FPS for the source file is unknown.
            </div>

            <div>
                <b>Perform quick cuts</b><br />
                If this option is ticked, the cuts will be performed by adding the input file multiple times to
                the command line, each with a seek index and duration. This will be faster, but it will also
                cause less accurate cuts and/or audio slightly out of sync for some files. When quick cuts are
                selected, the filters used for cutting will always be placed first - anything else would not
                make sense.
            </div>

            <div>
                <b>Input file info</b><br />
                In the field "Show adv. time for period.." you can enter a time stamp at where you would like to se
                extended / advanced time information. A period before and after the time entered will be displayed
                in the external player in order to help you get accurate time for cutting. Since most media players
                only supports HH:MM:SS FFQueue will generate subtitles with milliseconds and display them on the
                input file which will enable you to get accurate time for cutting. Please note that this sollution
                MIGHT NOT always be 100% accurate, but it's tested with FFplay (preferred for this task) and VLC
                Media Player (second best option) and the time seems quite reliable. When the time is entered, click
                [Preview] or [Enter] (while in the field) to view the advanced time.
            </div>

            <div>
                <b>Frame preview</b><br />
                If video is available and FFQueue is able to determine video duration and frame rate you will be
                able to visually select a time stamp for a video frame that should be used in a time span to process.
                You can use the slider below the frame to navigate in the input file, left &amp; right arrow keys
                can be used for frame stepping, page up &amp; down can be used for larger steps. You can also use
                the "&gt;" &amp; "&lt;" buttons to navigate between frames. You can click "Set from" to transfer
                the current frame time to the "From" field and the "Set to" button to set the "To" field.
            </div>

            <div>
                <b>Preview settings</b><br />
                You can define an accuracy level to use when extracting frames. The lowest possible setting will
                usually only return key frames and the highest possible setting will result in a period of 10 seconds
                to be transcoded before the frame is extracted. The optimal setting for this is equal to the maximum
                distance between key frames in the input file. Start at a low setting and increase the accuracy until
                each frame is successfully displayed.<br />
                The Load delay is the amount of time waited before extracting a frame ranging from 0 to 2 seconds in
                100ms steps.
            </div>

            <div>
                <b>IMPORTANT NOTES!</b><br />

                Below is some important notes related to the usage of advanced cutting:

                <ol>
                    <li>When using advanced cutting, FFQueue cannot accurately estimate time remaining and progress.</li>
                    <li>Due to limitations in ffmpeg your encode will (most likely) fail if the input file contains a
                        audio track with multiple layouts (eg. stereo and surround mixed). If trying anyway you will
                        receive LOTS of <i>Non-monotonous DTS..</i> errors.</li>
                    <li>You might experience odd behaviour if the input file has variable frame rate - especially if you
                        choose the "Remove" option instead of the "Keep" option.</li>
                    <li>If the extraction of a frame (for preview) does not complete in 5 seconds, the attempt is aborted.
                        This might cause problems if your computer is very low end or if it is under load (working on some
                        heavy tasks).</li>
                    <li>Weird behaviour may be the result of combining advanced cuts with multiple input files. Avoid
                        it and remux extra streams after the cutting if you have issues.</li>
                </ol>
            </div>

        </blockquote>
    </div>

    <div>
        <b>[MORE]</b><br />
        Click this and you will get access to more per file input options. Click OK (or press [Enter]) to save
        the options and Cancel (or [Escape]) to cancel the changes and Clear if you want to clear all options.
        You can hover the mouse over the link for quick review of current input options. The accessible options are:

        <blockquote>

            <div>
                <b>Offset / synchronize stream by..</b> <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -itsoffset</a> <code>(before -i)</code><br />
                In this field you can specify a positive or negative integer value to offset the streams in the file
                with. The streams will then be offsettet relatively to the other files in the job.
            </div>

            <div>
                <small>
                    <b>TIP:</b> If you want to synchronize audio and video in one file you can add the same soure
                    file twice (as two separate input files), select the video stream (in the stream list) from the first
                    and audio stream(s) from the second and define how many millseconds to offset either of them with.
                </small>
            </div>

            <div>
                <b>Force frame rate to..</b>
                <a class="ff" href="https://www.ffmpeg.org/ffmpeg-formats.html" target="_blank">ffmpeg -framerate</a> or
                <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Video-Options" target="_blank">ffmpeg -r</a>
                <code>(before -i)</code><br />
                If you want to specify the frame rate of the input file you can do so in this field. This can be used
                to either speed up or slow down the video (but NOT the audio), although there are better ways of doing
                this (like the setpts/asetpts filters).
            </div>

            <div>
                <b>Force frame rate with..</b><br />
                This option makes it possible to specify if the "-r" argument should be preferred over "-framerate".
                Usually -framerate is the most versatile option and it is required for image formats but in some
                cases you will get odd results with videos if you are using -framerate rather than -r.
            </div>

            <div>
                <b>Input flags</b> <a class="ff" href="https://www.ffmpeg.org/ffmpeg-formats.html#Format-Options" target="_blank">ffmpeg -fflags</a> <code>(before -i)</code><br />
                You can specify the following input flags that should be used for the file:
                <ul>
                    <li>Discard corrupt frames <a class="ff">ffmpeg -fflags +discardcorrupt</a></li>
                    <li>Generate presentation time stamps <a class="ff">ffmpeg -fflags +genpts</a></li>
                    <li>Ignore decoder time stamps <a class="ff">ffmpeg -fflags +igndts</a></li>
                    <li>Ignore index <a class="ff">ffmpeg -fflags +ignidx</a></li>
                </ul>
            </div>

            <div>
                <b>N.B!</b> Not all input arguments are appliable to all formats / demuxers. Don't use the arguments if
                they do not make sense :-)
            </div>
            
        </blockquote>

    </div>

    <div>
        <b>Add input file</b><br />
        Click this button to add an input file to the job. All other input files must be valid before
        another one can be added.
    </div>

    <div>
        <b>Remove input file</b><br />
        Click this button to remove an input file from the job. You can only remove an input file if
        there are at leas two added.
    </div>

    <div>
        <b>Find secondary files</b><br />
        Click this button to search for secondary input files to the <b>selected file</b> (not the
        primary file). This will search for files with the same name, but with one of the extensions
        defined in <a href="#cfg">Options</a> and add them to the job.
    </div>

    <!--h4>Input file(s) #1 &amp; #2 <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -i</a></h4>
    <div>
        In these field you can specify two source files for the job. It is possible to select two files
        because you might have audio and video in different files or you want to overlay subtitles from
        another file than the audio &amp; video source.
    </div>

    <h4>Process stream(s) in #1 &amp; #2 from.. <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -ss</a> <code>(before -i)</code></h4>
    <div>
        Click this link to define an offset in the source files from where to start the encoding. See
        <a href="#timeedit">Time editor</a> for more information.
    </div-->

    <h4>Select stream(s) to include in output file <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-options" target="_blank">ffmpeg -map</a></h4>
    <div>
        This list displays the available stream(s) in the source files. You can get more information
        about the different streams by double-clicking them. Only the checked streams will be mapped
        into the output file and they will be mapped in the order they appear in the list.
        <br />
        <br />
        Since V1.7.54 you can right-click audio and subtitle streams (if checked for mapping) and
        select one or more secondary preset(s) for those streams. This will cause the stream(s) to both be
        included using the preset selected at the bottom of the job editor and with the preset(s) selected
        in the right click menu. The result being that the same stream will be added multiple times to the
        output file but with different encodings. The following settings will be used from the right-click
        selected preset(s): Everything from the "Audio", "Subtitle" and "Metadata" pages for the specific stream type(s). From the
        "Metadata" page no global data is used. From the "Miscellaneous" page "Disposition" will be used if
        defined for the stream type.
        <br /><br />
        <b>NOTE:</b> Presets where "BURN-IN" is selected as subtitle codec cannot be used as secondary
        preset for subtitle streams.
    </div>

    <h4>Output file</h4>
    <div>
        This filename represents the destination in where the selected streams will be processed to.
    </div>

    <h4>Limit length of output to.. <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -t</a> <code>as output option</code></h4>
    <div>
        Click this link to define a maximum time based length of the output file. See <a href="#timeedit">Time
        editor</a> for more information.
    </div>

    <h4>FFmpeg command line</h4>
    <div>
        In this field you can specify a custom command line to execute with FFmpeg (without path to ffmpeg).
        You can use the following variables in the command line:

        <ul>
            <li><b>&lt;%inputs%&gt;:</b> Will be replaced with the input files #1 & #2 (any specified) and their time offset value(s).</li>
            <li><b>&lt;%preset%&gt;:</b> Will be replaced with the contents of the selected preset. If no preset is selected this variable will be removed.</li>
            <li><b>&lt;%output%&gt;:</b> Will be replaced with the output file and its time limit value.</li>
        </ul>

        Any variable will include a blank space before and after where necessary.
    </div>

    <h4>Preset command lines</h4>
    <div>
        In this list you can select a preset to be used for the job. If you want to open the
        <a href="#presetmgr">Preset manager</a> you can click the <b>[...]</b> button to the right.
    </div>

    <h4>Save log file to *_log.htm</h4>
    <div>
        Check this field if you want to save the contents of the console to a color coded HTML-file when the job
        has finished. If the log file already exists a number will be appended to the filename to create a unique
        name for the log.
    </div>

</div>


<div id="batchmake">

    <h3>Batch make</h3>

    <div>
        The Batch make dialog is invoked by clicking the [Batch...] button in the main window and then selecting
        files to create jobs for or by drag&amp;drop files into the queue list. The amount of jobs being created
        is displayed in the upper part of the dialog.
    </div>

    <h4>Select content to include</h4>
    <div>
        You must select at least one of these fields (Video, Audio &amp; Subtitle). Batch make will then attempt
        to locate the corresponding streams for the jobs being created. The selected streams are considered to be
        required and the creation of a job fails if no corresponding stream is found.
    </div>

    <h4>Do not fail on missing</h4>
    <div>
        By default Batch make will fail for a file if any of the selected content to include is not present.
        Using these fields you can prevent Batch make from failing to create a job, if any of the wanted content
        should not be available in some of the files selected.
    </div>

    <h4>If available, also include</h4>
    <div>
        If you want to include attachments and/or data streams from the input files, you can tick either or both
        of these selections. If none of the selected are available in the source files, Batch make will not fail
        for the file.
    </div>

    <h4>Define preferred audio/subtitle codec(s)</h4>
    <div>
        If the source files contains multiple audio/subtitle streams you can specify which codec(s) and language(s)
        to search for. You can define multiple search terms by separating them with a blank space. If this field
        is empty, all audio/subtitle streams will be selected.
        <blockquote>
        <b>Inverse matching: Exclude matching streams</b> If you tick this option, all streams that match the
        search terms will be excluded and all streams not matching will be included.
        </blockquote>
    </div>

    <h4>Destination format for output</h4>
    <div>
        Define the format (file extension) to be used for the destination (output) files.
    </div>

    <h4>Destination folder</h4>
    <div>
        If you want to place all the output files in another folder than the source folder you can specify the
        target in this field. If sources are located in sub folders or a folder is being batched the folder
        structure will be created in the destination folder. Click button [...] to browse for a folder. To use
        the source folder as target this field must be left empty.
    </div>

    <h4>Select a preset</h4>
    <div>
        In this field you must select the preset to be used for the jobs being created. If you want
        to open the <a href="#presetmgr">Preset manager</a> you can click the <b>[...]</b> button to the right.
    </div>

    <h4>Dry run...</h4>
    <div>
        Click this button to create the jobs without adding them to the queue list. This is usefull if you want
        to review the jobs created before creating them.
    </div>

    <div><small>
        <b>HINT:</b> Batch make dumps info to the main window for the jobs being created for easy review.
        <span style="color:green">Green means all OK</span>, <span style="color:red">red means error</span>
        and <span style="color:blue">blue means stream found - but not the preferred</span>.
    </small></div>

</div>


<div id="timeedit">

    <h3>Time editor</h3>

    <div>
        In the fields "Hours", "Minutes", "Seconds" and "Milliseconds" you can specify the time value you want to
        insert. The "Subtract start of" buttons are handy if you want to subtract the start time of any of the input
        files (you want to encode from 00:05:35.300 through 01:34:53.234 - you can then specify 01:34:53.234 and click
        subtract 00:05:35.300 in order to get the actual length to be used for the output). Beware that if start and
        / or length is defined for a job that uses "copy" codecs the job might fail to process.
    </div>
    
    <div>
        When you're done defining the time you can click [OK] to apply, [Cancel] to dismiss without applying or
        [Clear] to clear any defined time value.
    </div>

</div>

<div id="presetmgr">

    <h3>Preset manager</h3>
    <div>
        This list contains all the presets that are available throughout FFQueue. You can select multiple
        items by holding down the [SHIFT] or [CTRL] key while selecting items with the mouse.
    </div>

    <div>
        Buttons in the Preset manager are:
    </div>

    <div>
        <b>[New...]</b> Create a new preset.<br />
        <b>[Edit...]</b> Modify selected preset.<br />
        <b>[Delete]</b> Delete the selected preset(s).<br />
        <b>[Move up]</b> Move selected preset(s) up in the list.<br />
        <b>[Move down]</b> Move selected preset(s) down in the list.<br />
        <b>[Sort]</b> Sort presets in alphabetical order.<br />
        <b>[Copy]</b> Copy selected preset(s) to the clipboard.<br />
        <b>[Paste]</b> Paste presets from the clipboard.<br />
        <b>[Close]</b> Closes the preset manager.<br />
    </div>

    <div>
        The copy and paste functions can both be used to duplicate presets locally but they can also
        be used for sharing presets on the internet since they can be pasted in forums, mails or alike
        and then copy-pasted back into a Preset manager elsewhere. The paste function will ensure
        unique names and IDs for the inserted preset(s).
    </div>

    <div>
        See also <a href="#presetedit">Preset editor</a>.
    </div>

</div>

<div id="presetedit">

    <h3>Preset editor</h3>

    <div>
        Please note that any value defined in a preset that cannot be applied to the job it is selected
        to be used for will not be implemented in the command line. If audio filters are defined for a job
        with no audio these filters will be skipped. If subtitle burn-in is defined for a job without
        subtitles they will be skipped and so on. Therefore you can use the same preset for making moves
        and / or audio files.
    </div>

    <h4>Preset name</h4>
    <div>
        In this field you must specify a name for the preset. It is recommended to specify a unique name that
        describes the preset well to make it easier to select the proper preset later.
    </div>

    <h4>This preset is temporary</h4>
    <div>
        Check this field if you do not want the preset to be stored, thus available in the next session.
    </div>

    <h4 id="about_codecs">About encoding &amp; codecs..</h4>
    <div>
        The codecs that can be chosen in FFQueue are read out from FFmpeg using the command
        <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Generic-options" target="_blank">ffmpeg
        -encoders</a> or <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Generic-options" target="_blank">ffmpeg
        -codecs</a> (whichever works). Not all the codecs listed might be available to you since some might be
        experimental, deprecated or unavailable for some other reason (check FFmpeg output). By default only a
        list of well known audio &amp; video codecs are added to the lists. For a full list of codecs you should
        enable full codec listings in the <a href="#cfg">Options editor</a>.
    </div>

    <h4>CBR (Constant Bit Rate) / VBR (Variable Bit Rate)</h4>
    <div>
        The <a href="#bitrate">bit rate controls</a> are used to declare a target bit rate which is also
        known as average or constant bit rate. To achieve a variable bit rate you must use the quality
        settings found on the Quality page for video and the Quality section for audio.
    </div>

    <h4>The Video page</h4>

    <blockquote>

        <h4>Codec <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Video-Options" target="_blank">ffmpeg -vcodec (-c:v)</a></h4>
        <div>
            In this field you must select the codec you want to use to encode video. The selected codec will determine
            which values will be enabled to define.
        </div>

        <h4>Two-pass encoding <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Video-Options" target="_blank">ffmpeg -pass <i>N</i></a></h4>
        <div>
            If this field is checked FFQueue will attempt to run two passes on the job. The log file created by ffmpeg
            (<a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Video-Options" target="_blank">ffmpeg -passlogfile</a>)
            used for the two pass encoding will be located in the temporary path specified in <a href="#cfg">Options</a>
            and FFQueue deletes the <code>*.log</code> and the <code>*.log.mbtree</code> when the second pass has
            finished. First pass will be performed without audio (faster). Two pass encoding cannot be used in combination
            with variable bitrate (Quality settings).
            <blockquote>
                <b>The H.265 Codec</b>: FFQueue will use <code>-x265-params pass=<i>pass_no</i>:stats=<i>log_file</i></code>
                to perform two pass encoding - do not use these arguments as custom command line arguments.
            </blockquote>
        </div>

        <h4>No output file for first pass</h4>
        <div>
            FFQueue can tell FFmpeg not to create an output file for the first pass - which might be faster. However
            this option might cause FFmpeg to fail the second pass and reporting stuff like
            <span style="color:blue">Incomplete MB-tree stats file</span>, <span style="color:blue">Video encoding
            failed</span> and <span style="color:blue">Conversion failed!</span>. If you get these types of messages
            please disable this option and try again.
        </div>

        <h4>Bit rate</h4>
        <div>
            Please see <a href="#bitrate">bit rate controls</a>.
        </div>

        <h4>Quality</h4>
        <div>
            The values on this page must be enabled and checked in order to be passed to FFMpeg.
            <blockquote>
                
                <h4>Quality setting</h4>
                <div>
                    Please see <a href="#qscale">Quality setting</a>
                </div>

                <h4>Best constant quality <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -crf</a></h4>
                <div>
                    Defines the best constant picture quality for variable bit rate (aka CRF / Constant Rate Factor).
                </div>

                <h4>Worst constant quality <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -crf_max</a></h4>
                <div>
                    If you use "Best constant quality" you can use this setting to define the lowest acceptable picture quality.
                </div>

                <h4>Best quantizer quality <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -qmin</a></h4>
                <div>
                    This setting defines how the best quantization quality (field compression) should be.
                    <a href="http://en.wikipedia.org/wiki/Quantization_(image_processing)" target="_blank">Wiki!</a>.
                </div>

                <h4>Worst quantizer quality <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -qax</a></h4>
                <div>
                    This setting defines how the worst quantization quality should be.
                </div>

                <h4>Max. quantizer difference <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -qdiff</a></h4>
                <div>
                    This setting defines how much the variation of quantization is allowed to be from one frame to another.
                </div>

            </blockquote>
        </div>

        <h4>Key frames</h4>
        <div>
            
            This page contains values for key frame frequency (full picture update), motion estimation method and scene detection sensitivity.

            <blockquote>
                
                <h4>Shortest distance between keyframes <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -keyint_min</a></h4>
                <div>
                    This value defines how many frames there should at least be between key frames. This value is also known
                    as minimum GOP (Group Of Pictures) size
                </div>

                <h4>Longest distance between keyframes <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -g</a></h4>
                <div>
                    This value defines how many frames there should at most be between key frames (maximum GOP size).
                </div>

                <h4>Maximum of consecutive B-frames <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -bf</a></h4>
                <div>
                    Sets the maximum amount of consecutive B-frames. B-frames are partial frames based on content in
                    frames before or after the B-frame.
                </div>

                <h4>Maximum reference frames for P-frames <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -refs</a></h4>
                <div>
                    Set the maximum number of I-frames (complete key frames) that can be used to construct a P-frame.
                    P-frames are partial frames that are based on frames before the P-frame.
                </div>

                <h4>Motion estimation method <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -me_method</a></h4>
                <div>
                    In this field you can specify (or select) the method that should be used for motion estimation.
                    Please note that not all codecs will support all the values available in the drop down - see
                    ffmpeg documentation for further info (link above).
                </div>

                <h4>Scene change sensitivity <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -sc_threshold</a></h4>
                <div>
                    This field must be checked in order to pass the value selected to FFmpeg. Whenever FFmpeg detects a
                    scene change a key frame will be created and the value selected in the associated track bar / slider
                    defines how sensitive FFmpeg should be. Lowest sensitivity will disable scene change detection. A
                    sensitivity of 40% (which is the default value) will detect a 40% change in the overall picture as
                    a scene change and thus create a key frame.
                </div>

                <h4>Closed GOP (Group Of Pictures)  <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -flags +cgop</a></h4>
                <div>
                   This will enable a closed GOP size. This option is usefull if you want to segment your output file (see <a href="#misc_page">The Miscellaneous page</a>).
                </div>

            </blockquote>
        </div>

        <h4>Other</h4>
        <div>
            
            Miscellaneous fields for video encoding.

            <blockquote>
                
                <h4>Video sync <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-options" target="_blank">ffmpeg -vsync</a></h4>
                <div>
                    Defines how the video is synchronized with the audio.
                </div>

                <h4>Framerate <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Video-Options" target="_blank">ffmpeg -r</a></h4>
                <div>
                    Define the framerate in frames per second for video encoding.
                </div>

                <h4>Pixel format <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-Video-options" target="_blank">ffmpeg -pix_fmt</a></h4>
                <div>
                    In this field you can specify a pixel format for the output file. A list of supported pixel formats
                    can be selected from the drop down list.
                </div>

                <h4>Trellis <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -trellis</a></h4>
                <div>
                    Determins how optimal quantization should be used.
                </div>

                <h4>Speed preset <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Options-27" target="_blank">ffmpeg -preset:v</a></h4>
                <div>
                    The speed preset to use (for H.264/AVC and H.265/HEVC). You can specify other presets than the listed onest
                    for other codecs as you need.
                </div>

                <h4>Video tuning <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Options-27" target="_blank">ffmpeg -preset:v</a></h4>
                <div>
                    The video tuning to be used for H.264/AVC and H.265/HEVC.
                </div>

                <h4>Threads <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -threads</a></h4>
                <div>
                    How many encoding threads should be used. FFMpeg usually fires as many threads as possible for the codec
                    but limited to the amount of cores in the processor. You would rarely change this unless you want to force
                    FFMpeg use less threads, thus leaving free processor cores for other work 'n fun.
                </div>

            </blockquote>

        </div>

        <h4>HW Decoding</h4>
        <div>

            Fields used to enable <a href="https://trac.ffmpeg.org/wiki/HWAccelIntro" target="_blank">hardware
            decoding</a> of video stream(s).

            <blockquote>

                <h4>Accelerator <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-Video-options" target="_blank">ffmpeg -hwaccel</a></h4>
                <div>
                    The accelerator to be used for hardware decoding. If none is selected (default), hardware decoding is
                    disabled regardless of the values selected in the other fields.
                </div>

                <h4>Codec <a class="ff" href="https://www.ffmpeg.org/ffmpeg-all.html#Main-options" target="_blank">ffmpeg -c:v</a> (input)</h4>
                <div>
                    If you want to explicitly define the codec to be used for hardware decoding, you can do it here.
                </div>

                <h4>Device <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-Video-options" target="_blank">ffmpeg -hwaccel_device</a></h4>
                <div>
                    If you have multiple GPU's you can specify either a numeric value specifying the index of the
                    GPU to use (first GPU = 0, second = 1 etc.). You can also specify a path to the rendering device.
                </div>

                <h4>Device initializer <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-Video-options" target="_blank">ffmpeg -init_hw_device</a></h4>
                <div>
                    If you explicitly want to initialize your hardware device, it can be done in this field.
                </div>

            </blockquote>

        </div>

    </blockquote>

    <h4>The Audio page</h4>

    <blockquote>

        <h4>Codec <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Audio-Options" target="_blank">ffmpeg -acodec (-c:a)</a></h4>
        <div>
            In this field you must select the codec you want to use to encode audio.
        </div>

        <h4>Bit rate</h4>
        <div>
            Please see <a href="#bitrate">bit rate controls</a>.
        </div>

        <h4>Quality</h4>
        <blockquote>

            <h4>Quality setting</h4>
            <div>
                Please see <a href="#qscale">Quality setting</a>
            </div>

        </blockquote>

        <h4>Other</h4>
        <blockquote>

            <h4>Number of audio channels <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Audio-Options" target="_blank">ffmpeg -ac</a></h4>
            <div>
                Define the number of audio channels to encode.
            </div>

            <h4>Audio profile <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -profile:a</a></h4>
            <div>
                Defines the profile to be used for audio encoding.
            </div>

        </blockquote>

    </blockquote>

    <h4>The Subtitles page</h4>

    <blockquote>
    
        <h4>Codec <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Subtitle-options" target="_blank">ffmpeg -scodec (-c:s)</a></h4>
        <div>
            In this field you must select the codec you want to use to encode subtitles.
        </div>

        <h4>Burn in subtitles</h4>
        <div>
            This section is used to define how subtitles should be burned in to the video. To define  these values
            you must select the BURN-IN subtitle codec (FFQueue internal codec) and the video codec cannot be "copy".
            When burn in of subtitles is enabled a filter (Subtitle BURN-IN) is added to the filter list which enables
            you to define where in the filter chain the burn in should take place.
        </div>

        <blockquote>

            <h4>Subtitle type</h4>
            <div>
                Define the type of subtitle to burn in. If you select a text-based subtitle and
                the job includes a bitmap-based subtitle stream (or vice versa) the job will fail to
                process.
            </div>

            <h4>Subtitle size</h4>
            <div>
                In these fields you can define the original size of the subtitles. If the size of the subtitles does
                not correspond to the defined size the subtitles might fly around where they are not supposed to and
                this might even cause encoding to fail. <b>Default</b> uses the dimensions defined in the source file
                (if any, else ffmpeg makes a guess), <b>PAL (DVB_Subs)</b> uses the size 720x576. <b>Custom</b> can
                be used to define a custom subtitle size if none of the other values did the job well.
            </div>

            <h4>Scale subtitles</h4>
            <div>
                You can downscale bitmap-based subtitles in order to make them take up less space in
                the encoded output. Please note that downscaled subtitles might be hard to read so be
                careful.
            </div>

        </blockquote>


    </blockquote>

    <h4>The Filters page</h4>
    <div>
        The filter listing defines what filters are to be used when encoding audio &amp; video. Filters
        does not do anything when remuxing (using codec: copy). Filters are applied to source in the same
        order they appear in the list (video filters and audio filters are separated) so beware that any
        size changing filters might influence the rest of the filter chain. Use [CTRL] or [Shift] to
        select multiple items with the mouse.
    </div>

    <div>
        Video filters are applied with
        <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#filter_005fcomplex_005foption" target="_blank">-filter_complex</a>
        and audio filters are applied with <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Audio-Options" target="_blank">-af</a>
        (see next section).
    </div>

    <div>
        <b>Complex audio filters..</b> This option gives you the possibility to have the audio filters added to "filter_complex"
        rather than "af". This should ONLY be done if you add custom audio filters that requires multiple input streams or that
        generates multiple output streams (like the "channelsplit" filter).
    </div>

    <div>
        Buttons next to the filter list:
    </div>

    <div>
        <b>[Add..]</b> Add a new filter to the end of the filter chain.<br />
        <b>[Edit..]</b> Edit the selected filter (double-click the selected filter does the same).<br />
        <b>[Remove]</b> Remove the selected filter(s).<br />
        <b>[Move up]</b> Moves the selected filter(s) up in the chain.<br />
        <b>[Move down]</b> Moves the selected filter(s) down in the chain.<br />
        <b>[Preview]</b> Preview the filters in the list (*).<br />
    </div>

    <div>
        (*) The preview function will use the first selected file in the queue list (main window) as a test file and
        prompt you to accept (or change) the file selected. You will only be asked one time and if you want to change
        the test file you must change away from the "Filters" tab and back again. The preview function will only work
        on simple filters - filters like watermark will not be available to preview. Custom filters might cause the
        preview to fail.
    </div>

    <div>
        Available filters are:
    </div>
    
    <ul class="nodot">

        <li class="vid">
            <b>Box blur</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#boxblur" target="_blank">boxblur</a></code>
        </li>
        <li class="vid">
            <b>Color balance</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#colorbalance" target="_blank">colorbalance</a></code>
        </li>
        <li class="vid">
            <b>Color overlay</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#overlay" target="_blank">overlay</a> with colored box</code>
        </li>
        <li class="vid">
            <b>Curve adjust (color)</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#curves" target="_blank">curves</a></code>
        </li>
        <li class="vid">
            <b>Color Matrix</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#colormatrix" target="_blank">colormatrix</a></code>
        </li>
        <li class="vid">
            <b>Crop</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#crop" target="_blank">crop</a></code>
        </li>
        <li class="vid">
            <b>Deinterlace</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#yadif" target="_blank">yadif</a> /
                                <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#kerndeint" target="_blank">kerndeint</a></code>
        </li>
        <li class="vid">
            <b>Dejudder</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#dejudder" target="_blank">dejudder</a></code>
        </li>
        <li class="vid">
            <b>Deshake</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#deshake" target="_blank">deshake</a></code>
        </li>
        <li class="vid">
            <b>Drop duplicated frames</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#decimate" target="_blank">decimate</a></code>
        </li>
        <li class="vid">
            <b>Flip &amp; mirror</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#hflip" target="_blank">hflip</a> /
            <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#vflip" target="_blank">vflip</a></code>
        </li>
        <li class="vid">
            <b>Frame stepping</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#framestep" target="_blank">framestep</a></code>
        </li>
        <li class="vid">
            <b>Hue/Saturation/Brightness</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#hue" target="_blank">hue</a></code>
        </li>
        <li class="vid">
            <b>HQ Denoise 3D</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#hqdn3d" target="_blank">hqdn3d</a></code>
        </li>
        <li class="vid">
            <b>Interlace</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#interlace" target="_blank">interlace</a> /
                                <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#tinterlace" target="_blank">tinterlace</a></code>
        </li>
        <li class="vid">
            <b>Invert colors</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#negate" target="_blank">negate</a></code>
        </li>
        <li class="vid">
            <b>Lens correction</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#lenscorrection" target="_blank">lenscorrection</a></code>
        </li>
        <li class="vid">
            <b>Noise</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#noise" target="_blank">noise</a></code>
        </li>
        <li class="vid">
            <b>Pad to size</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#pad" target="_blank">pad</a></code>
        </li>
        <li class="vid">
            <b>Perspective</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#perspective" target="_blank">perspective</a></code>
        </li>
        <li class="vid">
            <b>Posterize</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#elbg" target="_blank">elbg</a></code>
        </li>
        <li class="vid">
            <b>Remove flicker</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#deflicker" target="_blank">deflicker</a></code>
        </li>
        <li class="vid">
            <b>Remove logo</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#delogo" target="_blank">delogo</a>
            / <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#removelogo" target="_blank">removelogo</a></code>
        </li>
        <li class="vid">
            <b>Rotate</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#rotate" target="_blank">rotate</a></code>
        </li>
        <li class="vid">
            <b>Scale (resize)</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#scale" target="_blank">scale</a></code>
        </li>
        <li class="vid">
            <b>Sharpen (or soften)</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#unsharp" target="_blank">unsharp</a></code>
        </li>
        <li class="vid">
            <b>Swap U & V plane</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#swapuv" target="_blank">swapuv</a></code>
        </li>
        <li class="vid">
            <b>Transposee</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#transpose" target="_blank">transpose</a></code>
        </li>
        <li class="vid">
            <b>Vignette</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#vignette" target="_blank">vignette</a></code>
        </li>
        <li class="vid">
            <b>Watermark (overlay image)</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#overlay" target="_blank">overlay</a> with image source</code>
        </li>


        <li class="aud">
            <b>Bandpass</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#bandpass" target="_blank">bandpass</a></code>
        </li>
        <li class="aud">
            <b>Bandreject</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#bandreject" target="_blank">bandreject</a></code>
        </li>
        <li class="aud">
            <b>Change tempo</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#atempo" target="_blank">atempo</a></code>
        </li>
        <li class="aud">
            <b>Channel remapping</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#channelmap" target="_blank">channelmap</a></code>
        </li>
        <li class="aud">
            <b>Delay channels</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#adelay" target="_blank">adelay</a></code>
        </li>
        <li class="aud">
            <b>Echo</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#aecho" target="_blank">aecho</a></code>
        </li>
        <li class="aud">
            <b>Equalizer (10 band)</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#equalizer" target="_blank">equalizer</a></code>
            (Q-Factor width 1,5 pr. band)
        </li>
        <li class="aud">
            <b>Flanger</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#flanger" target="_blank">flanger</a></code>
        </li>
        <li class="aud">
            <b>Headphonize</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#earwax" target="_blank">earwax</a></code>
        </li>
        <li class="aud">
            <b>Highpass</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#highpass" target="_blank">highpass</a></code>
        </li>
        <li class="aud">
            <b>Lowpass</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#lowpass" target="_blank">lowpass</a></code>
        </li>
        <li class="aud">
            <b>Normalization</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#dynaudnorm" target="_blank">dynaudnorm</a></code>
        </li>
        <li class="aud">
            <b>Phaser</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#aphaser" target="_blank">aphaser</a></code>
        </li>
        <li class="aud">
            <b>Resample</b>
            <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#aresample" target="_blank">aresample</a></code>
        </li>
        <li class="aud">
            <b>Volume and Tone</b> <code>ffmpeg filter <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#volume" target="_blank">volume</a>,
            <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#bass" target="_blank">bass</a> and
            <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#treble" target="_blank">treble</a></code>
        </li>


        <li class="cust">
            <b>Custom filter</b> Adds any custom defined filter supported by ffmpeg to the filter chain - both audio &amp; video!
        </li>

    </ul>

    <div>
        Some of the filters supports a "from" and "to" time value in which the filter will be applied. This is usefull
        if you want a filter to "black out" a face or whatever in a certain time span or if a watermark / image should only
        be displayed i a certain time span. The individual filters are not described further but you can find out more about
        the filters in <a href="https://www.ffmpeg.org/ffmpeg-filters.html" target="_blank">ffmpeg's filter documentation</a>.
    </div>
    
    <h4>The Metadata page</h4>
    <div>
        Metadata values are set with ffmpeg option <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">-metadata</a>.
    </div>

    <blockquote>

        <h4>Define key-value pairs for metadata</h4>
        <div>
            In this list you can define a range of key-value pairs that will be implemented as metadata.
            FFQueue has a default set of keys implemented but you can add any keys and values you like to the end of the list by filling
            out the blank fields. Not all keys are supported by all formats and values are not tested for validity - only for illegal
            characters or character sequences ("[|]" in keys and values. Blanks, quotes and equal sign in keys only).
        </div>

        <h4>Set metadata for:</h4>
        <div>
            Here you can select which stream types the metadata should be applied to. If "All (global)" is selected, the
            values will be set to the file rather than sepcific streams.
        </div>

    </blockquote>

    <h4>The Thumbs page</h4>
    <div>
        In this page you can define if thumbs and / or mosaics should be created from the output files that are encoded using the
        preset. For more information see <a href="#thumbmake">thumb maker</a>.
    </div>

    <h4 id="misc_page">The Miscellaneous page</h4>
    <div>
        Miscellaneous settings and values.
    </div>

    <blockquote>

        <h4>Change FOURCC for AVI files <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Advanced-options" target="_blank">ffmpeg -tag (as -atag &amp; -vtag)</a></h4>
        <div>
            In these fields you can define the FOURCC's to be used in AVI-files to describe the codecs
            to be used for decoding. This is can be useful when encoding with MPEG4 codec and the AVI
            should use XviD or DivX for decoding.
        </div>

        <h4>Custom command line arguments</h4>
        <div>
            In these fields you can define any custom command line arguments that should be passed to FFMpeg
            for the first pass and / or the second pass. If you do not use two-pass encoding only the arguments
            for first pass are usefull. The contents of this field is added to the end of the preset settings
            making is possible to override arguments set by FFQueue. Use these fields with caution since they might
            screw up other properties set by FFQueue.
            <br /><br />
            Since version 1.7.51 it is possible to separate the custom command line arguments into input arguments
            and output arguments with "||". If you enter the arguments <code>-some thing||-other thing</code> then
            "-some thing" will be prepended to any input file(s) and "-other thing" will be appended to the preset
            as usual.
        </div>

        <h4>Segmenting <a class="ff" href="https://www.ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment">ffmpeg -f segment</a></h4>
        <div>
            These settings can be used to define how a file should be segmented. <b>Segment length</b> is the length
            of each segment defined as seconds, minutes or hours. With <b>List file</b> you can select between different
            types of list files generated by ffmpeg. <b>Reset timestamps</b> will generate new timestamps for each segment.
            <b>Incremental time code</b> will let the time increment through all segments. <b>For streaming</b> will
            use the <code>ssegment</code> format instead of <code>segment</code>. <b>Break non-keyframes</b> will allow
            breaking of non-keyframes in segments. <a href="https://www.ffmpeg.org/ffmpeg-formats.html#segment_002c-stream_005fsegment_002c-ssegment">Please
            read ffmpeg docs for further info</a>.
            <br />
            <b>NOTE!</b> When segmenting is used, FFQueue will insert a numeric formatter to the ouput file name (eg. "out.mp4"
            becomes "out %03d.mp4"). This means that you will not get any overwrite warning if files with the generated
            names exists when starting a job.
        </div>

        <h4>Other -&gt; Aspect ratio <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Video-Options" target="_blank">ffmpeg -aspect</a></h4>
        <div>
            In this field you can specify an aspect ratio. It must either be a floating point value (x.xx) or
            a nominator:denominator (4:3). A list of common aspects are available in the drop down list.
        </div>

        <h4>Other -&gt; Dispositions <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -disposition</a></h4>
        <div>
            Click this button to open a menu where you can select disposition for individual stream types. "Undefinied" means
            that the option is not used, "Un-set existing" means that any disposition from the input stream(s) will be cleared
            (-disposition 0).
        </div>

        <h4>Other -&gt; Output format <a class="ff" href="https://www.ffmpeg.org/ffmpeg.html#Main-options" target="_blank">ffmpeg -f</a></h4>
        <div>
            In this field you can explicitly define an output format for the ouput file. This will override the format specified
            by the file extension.
        </div>

        <h4>Other -&gt; Enable faststart for better streaming <a class="ff" href="https://www.ffmpeg.org/ffmpeg-formats.html#mov_002c-mp4_002c-ismv" target="_blank">ffmpeg -movflags faststart</a></h4>
        <div>
            This option will move the index (for MOV, MP4 and ISMV) to the beginning of the file in order
            to let playback to be started before any download has completed. Enabling this option might
            cause the encoding to seem stuck at the end without this being a problem.
        </div>

        <h4>Set file time of output file...</h4>
        <div>
            This option will copy the available file times from the first input file to the output file. This
            is usefull for people who uses file time for searching and ordering. On Linux the file times copied
            are modified time and accessed time. On Windows created time is copied as well.
        </div>

    </blockquote>

</div>



<div id="bitrate">

    <h3>Bit rate controls</h3>
    <div>        
        The bit rate controls are used to define properties for both video and audio rates.
    </div>

    <h4>Bit rate declared as</h4>
    <div>
        In this field you must select how FFQueue should deliver bit rates to FFmpeg. Please be warned that
        some (mostly newer) codec does not support bps (bit/sec) and they will understand bps as kbps (kbit/sec).
        To be sure to get it right you should refraign from using any setting below kbps unless you are
        sure the selected codec will accept it.
    </div>

    <h4>Average bit rate <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -b:[a/v]</a></h4>
    <div>
        The average bit rate for the created content (not really variable bit rate nor constant bit rate).
    </div>

    <h4>Buffer size <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -bufsize:[a/v]</a></h4>
    <div>
        This value determins how often FFmpeg will recalculate the actual bit rate. Whenever the content created reches
        the buffer size the bit rate is calculated and the buffer is reset.
    </div>

    <h4>Minimum bit rate <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -minrate:[a/v]</a></h4>
    <div>
        This value specifies how low the actual bit rate may get.
    </div>

    <h4>Maximum bit rate <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -maxrate:[a/v]</a></h4>
    <div>
        This value specifies how high the actual bit rate may get.
    </div>

    <h4>Tips for constant bit rates</h4>
    <div>
        To achieve constant bit rate (CBR) in order to get compatibility with older (read: stoneage) hardware
        you must declare the same value for average, minimum and maximum bit rate. Also you must specify a buffer
        size (optimally same size as the decoder buffer on the target device) that is no higher than the other
        bit rates. Normally you would start with a bit rate identical to average bit rate and then lower the value
        until the output from FFMpeg is playable on the target device.
    </div>
    
</div>


<div id="qscale">

    <h3>Quality setting (aka. quality scale / qscale) <a class="ff" href="https://www.ffmpeg.org/ffmpeg-codecs.html#Codec-Options" target="_blank">ffmpeg -q:[a/v]</a></h3>
    <div>
        The quality setting is used to define a requested quality (as VBR / Variable Bit Rate) for the content being
        created. The actual value passed from FFQueue to FFmpeg might vary depending on the codec selected. For mp3
        audio the value passed is between 0 (best quality: 220..260 kbps) and 9 (worst quality: 45..85 kpbs). For
        mpeg4 video the value is in the range 1 (best quality) to 31 (worst quality). Do not get confused by the fact
        that a higher quality might result in a lower value - this is intentional.
    </div>

</div>



<div id="thumbmake">

    <h3>Thumb maker</h3>

    <div>
        The thumb maker is used to create thumbnails and / or tiled mosaics with frames from a
        movie. The settings for creating thumbs are available both for presets and for the
        thumb maker tool. When used in presets the thumbs will be created from the output file
        after the encoding process has completed.
    </div>

    <div>
        <b style="color:Red">IMPORTANT!</b> Thumbs are created with silent overwrite of existing
        files. Please be sure to back up any previous images that might be overwritten by the
        making of thumbs!
    </div>

    <div>
        <b>About the process:</b> Statistics from FFmpeg are quite odd and often it seems like no
        work is being done at all. The remaining time and progress bar seems fixed. But FFmpeg is
        working and you should not panik about the odd statistics.
    </div>

    <h4>Input file <small><i>Not in presets</i></small></h4>
    <div>
        This is the video file used to create thumbs from.
    </div>

    <h4>Create thumbnails</h4>
    <div>
        Check this field if you want to create thumbnails (individual frames).
    </div>

    <h4>Create tiled mosaics</h4>
    <div>
        Check this field if you want to create mosaics composed of multiple thumbs.
    </div>

    <h4>Destination</h4>
    <div>
        Select where you want to store the images created. You can choose to have FFQueue store
        the images in a uniquely named subfolder to the folder in which the input file is located,
        a subfolder named <code>Thumbs</code> or in the folder where the input file is located.
        File naming of images depends on the selection made.
    </div>

    <h4>Image format</h4>
    <div>
        Select or specify the image format (file extension) to be used for the thumbs.
    </div>

    <h4>Thumbnail width</h4>
    <div>
        Specify the width of the thumbs - for some builds of FFMpeg the creation of thumbs will
        fail if this value is too small (below 50). The height of the thumbs will be automatically
        calculated by FFmpeg.
    </div>

    <h4>Create first thumb from..</h4>
    <div>
        If you want to skip a section from the beginning of the input file (eg. the intro) you can
        click this link and specify how much time should be skipped from the beginning.
    </div>

    <h4>Create thumb every..</h4>
    <div>
        Mark this field if you want to define if the thumbs should be created with a fixed frequency
        / interval that can be defined as frames, seconds or minutes.
    </div>

    <h4>Create thumb for each scene change..</h4>
    <div>
        Mark this field if you want FFMpeg to create a thumb for each estimated scene change. A scene
        change is defined by a change to the previous image that is more than 50%.
    </div>

    <h4>Max. amount of..</h4>
    <div>
        In these fields you can specify the maximum amount of thumbs or mosaics that should be created.
        Note that a maximum of 5 mosaics of the size 4x5 equals to a maximum of 100 individual thumbs.
        If the movie is too short to generate the specified maximum lesser thumbs / mosaics will be
        created.
    </div>

    <h4>Mosaic rows &amp; columns</h4>
    <div>
        Specify how many rows (Y) and columns (X) should be used in mosaics. The resulting image will
        be <i>columns multiplied with thumb width</i> wide and <i>rows multiplied with thumb height</i>
        high.
    </div>

    <h4>Save log file to *_log.htm</h4>
    <div>
        Option to save the console content to a log file (Input file used to create log file name).
    </div>

</div>

<div id="concat">

    <h3>Make slideshow / concat</h3>

    <div>
        This tool is used to create commands that enable you to either create a video from images
        or to concatenate multiple media files into a single file.
    </div>

    <h4>Make video from images</h4>
    <div>

        Select this tab to create a video file from one or more images. If you want to make a video
        from multiple images they must be in numeric order (like img01.jpg, img02.jpg, img03.jpg).
        If images are not in order or if numbers are missing some images might be left out.

        <blockquote>

            <h4>First image</h4>
            <div>
                In this field you must enter the name of the first image file that should be used
                for creating the frames in the video. FFQueue will automaticly attempt to detect
                the numeric sequence used to define the images. If images are named <code>img<i>nn</i>.jpg</code>
                where <i>nn</i> is a two digit number starting from 1 FFQueue will pass the image
                pattern <code>img%02d.jpg</code> to FFmpeg.
            </div>

            <h4>Images found</h4>
            <div>
                This link displays how many images are found. If you change the path to the first
                image manually you must click this link to count images.
            </div>

            <h4>Scale and pad</h4>
            <div>
                If the source images does not have the exact same dimensions you must tick this field
                in order to create a temporary range of images that will be resized and padded to fit
                into the video. The temporary images will be stored in a sub folder to the temporary
                path selected in <a href="#cfg">options</a>.
            </div>

            <h4>Size</h4>
            <div>
                If scale and pad is selected you must specify the width and the height of the scaled
                and padded images. This dimension will also be the dimension of the resulting video.
            </div>

            <h4>Fill color</h4>
            <div>
                If images does not fit exactly into the dimensions declared in with and height they
                will be padded with the color defined here.
            </div>

            <h4>Show each frame for</h4>
            <div>
                This defines the framerate of the input images. If you want to display each images for 2
                seconds you must enter "2" into this field. If you want a framerate of 25FPS you must enter
                the value "0.04".
            </div>

            <h4>Force presentation timestamp</h4>
            <div>
                Sometimes the first frame is either missing or just shown very briefly and if this is
                happening you can tick this field to have FFQueue do some extra magic. You should never
                tick this field unless proven necessary.
            </div>

            <h4>Audio track</h4>
            <div>
                If you want to add an audio track to the video you can enter the name of the audio file
                in this field.
            </div>

            <h4>Loop frames</h4>
            <div>
                If you want to loop the images util the audio track finishes you can tick this field. If
                this field is not ticked the audio will be cut when the all images have been displayed.
            </div>

        </blockquote>
        
    </div>

    <h4>Merge multiple sources</h4>
    <div>

        Select this tab if you want to merge multiple media files into a single file. This works
        with both audio files and video files (with or without audio).

        <blockquote>
            
            <h4>Source files</h4>
            <div>
                In this list you must add all the files you want to merge. You can add files with
                the <b>[Add...]</b> button and remove files with the <b>[Remove]</b> button. Since the
                files are merged in the same order they appear in this list you can move files up or
                down with the <b>[Move up]</b> and <b>[Move down]</b> buttons.
            </div>

            <h4>Perform simple concatenation</h4>
            <div>
                If you want to simply copy the streams from the source files into a single destination
                file without re-encoding it you can check this option. In order for this to work the
                source files must have equal content (same audio codec, same video codec, same video
                dimensions etc.) and the duration of the files must be correctly listed next to the
                file in the list. If the duration is not correctly listed you must double-click the
                file and define it manually or else you might get problems with artifacts.
                <br /><b>N.B:</b> Simple concatenation might cause problems with unicode filenames!

                <blockquote>
                    <h4>Explicitly map all streams</h4>
                    <div>
                        If enabled, all streams in the source files will be exlicitly mapped into the
                        output file. Use this option if streams are missing after a simple concat.
                    </div>
                </blockquote>

            </div>

            <h4>Force sample aspect</h4>
            <div>
                If the input video have different sample aspect ratios (SAR) you can tick this field in order
                to apply a "setsar" filter to correct this. You should only use this option if the source
                videos does not have identical sample aspects.
            </div>

            <h4>Use padding rather than stretching</h4>
            <div>
                By default all videos are stretched to equal the size of the first video in the list.
                If you tick this option the videos will be scaled to fit inside the rect of the first
                video and the padded to equal the size of the first video using one of the following options:
                <blockquote>
                    <b>Padding color</b> videos will be padded with this color.
                    <br />
                    <b>Padding blur</b> videos will be blurred with the strength selected and used as padding.
                </blockquote>
            </div>

            <h4>Content types</h4>
            <div>
                You must select at least one stream type to implement in the output video. Only the first
                stream of each of the selected types will be implemented in the merged result.
            </div>

        </blockquote>
    
    </div>

    <h4>Destination</h4>
    <div>
        
        In this area you specify the properties of the destination file for both making
        a video from images and for merging files.
        
        <blockquote>
            
            <h4>File name</h4>
            <div>
                The file that should be used as the destination for the job selected. Make sure to
                select a format that is suitable for the resulting content (audio file for audio only,
                video file for audio and video).
            </div>

            <h4>Preset</h4>
            <div>
                In this list you must select a preset to use for encoding the destination file. Presets
                using "copy" as encoding or presets using two pass might not be usable for the task.
            </div>

            <h4>Limit length</h4>
            <div>
                If you want to ensure that the runtime of the destination file does not exceed a certain
                time span you can click this link to define the time. If you create a video from images
                and define an audio track the length of the audio track will be predefined in the
                <a href="#timeedit">time editor</a>.
            </div>

            <h4>Save log file to *_log.htm</h4>
            <div>
                Option to save the console content to a log file (name of destination file used to create
                log file name).
            </div>

        </blockquote>

    </div>


</div>


<div id="vidstab">

    <h3>Two pass video stabilization</h3>

    <div>
        This tool is used for advanced stabilizing (remove camera shake) of videos. See more about the
        filters used in this tool in the ffmpeg documentation for <a class="ff"
        href="https://www.ffmpeg.org/ffmpeg-filters.html#vidstabdetect-1" target="_blank">vidstabdetect</a>
        and <a class="ff" href="https://www.ffmpeg.org/ffmpeg-filters.html#vidstabtransform-1"
        target="_blank">vidstabtransform</a>.
    </div>

    <h4>File to stabilize</h4>
    <div>
        In this field you must specify the file you want to stabilize. Click the [...] button
        to browse for the file.
    </div>

    <h4>First pass (detection)</h4>
    <div>

        This page has controls that is used for the first pass that detects the instability
        of the file and stores it to a transformation file used in the second pass and / or
        displays it in the destination video as motion vectors.

        <blockquote>

            <h4>Shakiness</h4>
            <div>Defines how much shakiness should be detected in the video.</div>

            <h4>Accuracy</h4>
            <div>Defines how accurate the search should be. More gives better results but slower detection.</div>

            <h4>Step size</h4>
            <div>The step size for the search process.</div>

            <h4>Min. contrast</h4>
            <div>The minimum contrast that is allowed in the search process. If contrast dips below the minimum the search will be paused until contrast increases again.</div>

            <h4>Tripod reference frame</h4>
            <div>An index of a frame that is used as the offset for the search process (the optimal camera position).</div>

        </blockquote>

    </div>

    <h4>Second pass (translation)</h4>
    <div>

        This page has controls that is used in the second pass to define how the transformations
        found in the first pass should be applied to the video.

        <blockquote>

            <h4>Smoothing</h4>
            <div>The number of frames used for movement smoothing. The value will be doubled and added to 1 (a value of 5 gives 11 frames).</div>

            <h4>Max. allowed number of pixels to shift</h4>
            <div>Defines how many pixels the transformations can at maximum be. A value of -1 means unlimited, 0 = no shifting.</div>

            <h4>Max. allowed number of degrees to rotate</h4>
            <div>Defines how many degrees (-1..180) the transformations can at maximum be. A value of -1 means unlimited, 0 = no rotating.</div>

            <h4>Zoom percentage</h4>
            <div>Sets the maximum allowed zoom (scaling) that may be done. A value less than zero means zoom out, a value above zero means zoom in, 0 = no zooming.</div>

            <h4>Max. zoom percent per frame</h4>
            <div>Sets the maximum allowed zoom (scaling) that may be done from a frame to the next frame.</div>

            <h4>Camera path optimization algorithm</h4>
            <div>The algorithm used to optimize the path of the camera.</div>

            <h4>Interpolation</h4>
            <div>The type of interpolation to be used in the transformation.</div>

            <h4>Optimal zoom</h4>
            <div>The optimal zoom strategy used in the transformation (none = borders will appear, static = border will appear with strong transformations, adaptive = no borders).</div>

            <h4>Use solid black...</h4>
            <div>If ticked borders caused by transformations will be black, otherwise the borders will be the pixels present before the transformation.</div>

            <h4>Invert transformations</h4>
            <div>Inverts the transformations.</div>

            <h4>Consider transformations to be relative...</h4>
            <div>If ticked the transformations are considered to be relative to the previous frame, if not ticked they are considered absolute.</div>

            <h4>Virtual tripod mode...</h4>
            <div>This is the same as "Consider transformations to be relative"=No and "Smoothing"=0.</div>

        </blockquote>

    </div>

    <h4>Other options</h4>
    <div>
        
        <blockquote>

            <h4>Only run first pass...</h4>
            <div>Use this option to visualize the transformations with motion vectors in the destination file.</div>

            <h4>Make detailed visualization</h4>
            <div>Tick this option if you want the visualization to be extensive.</div>

            <h4>Only run second pass...</h4>
            <div>This option can be used to only run the second pass using the translations made in a previous first pass.</div>

            <h4>Keep transformations...</h4>
            <div>
                Tick this option is you want the transformations file to be stored (with the source file) in order to run the
                second pass at a later time. If this option is not selected the tranformations file will be stored in the temporary
                folder specified in <a href="#cfg">Options</a> and deteled automatically by FFQueue.
            </div>

        </blockquote>

    </div>


    <h4>Destination</h4>
    <div>
        <blockquote>

            <h4>File name</h4>
            <div>The file name in where to store the stabilized video. Click [...] to browse.</div>

            <h4>Preset</h4>
            <div>
                The preset to use for further encoding of the destination file. The video stabilization
                filters will be inserted after any de-interlacing, but before anything else. Click [...]
                to open the <a href="#presetmgr">Preset manager</a>.
            </div>

            <h4>Save log file to *_log.htm</h4>
            <div>
                Option to save the console content to a log file (name of destination file used to create
                log file name).
            </div>

        </blockquote>
    </div>

</div>


<div id="vid2gif">
    
    <h3>Convert video to GIF</h3>

    <div>
        This tool can be used to convert a video, or parts thereof, to a GIF animation.
    </div>

    <div id="vid2gifnote">
        <b style="color:red">!!NOTE!!</b><br />
        This tool may fail (endless encoding with no progress) in two-pass mode when some versions of FFmpeg is paired with
        some types of source video. Workaround for this is to convert the part of the video you want to GIF'ify to another
        video format (MP4, FLV etc.) before converting it to GIF.
    </div>

    <h4>Select input file</h4>
    <div>
        In this field you must enter the source video used to create the GIF animation. When a valid video file
        is entered, information about that file will be displayed below this field.
    </div>

    <h4>Start conversion from...</h4>
    <div>
        Click this link in order to select the time offset in the source video from where to create the GIF.
    </div>

    <h4>GIF properties</h4>
    <blockquote>
        
        <h4>Width, height and Frame rate</h4>
        <div>
            If you do not specify any of these fields, the values of the source video will be used. If you declare either
            width or height, the missing field will be auto-calculated in order to maintain aspect ratio. You should not
            use frame rates above 10 for GIF's.
        </div>

        <h4>2 passes for optimized..</h4>
        <div>
            If this field is ticked, the <a class="ff" target="_blank" href="https://www.ffmpeg.org/ffmpeg-filters.html#palettegen-1">palettegen</a>
            and <a class="ff" target="_blank" href="https://www.ffmpeg.org/ffmpeg-filters.html#paletteuse">paletteuse</a> filters are used to create
            a palette with optimized colors to use in the GIF animation. If this field is not ticked, a fast single pass is used
            instead. If this field is unavailable (grayed out) the filters used for two pass are not available in the ffmpeg used.
        </div>

        <h4>Use filters to increase cut precision</h4>
        <div>
            If ticked, FFQueue will insert a <a class="ff" target="_blank" href="https://www.ffmpeg.org/ffmpeg-filters.html#select_002c-aselect">select</a>
            filter in order to increase the precision of the selected part of the source video. If you have trouble (<a href="#vid2gifnote">see note</a>)
            with the convert, please try to untick this option.
        </div>

        <h4>Limit length..</h4>
        <div>
            Defines how long the created GIF will be.
        </div>
    </blockquote>

    <h4>Select ouput file</h4>
    <div>
        In this field you must specify the name of the resulting GIF animation.
    </div>

    <h4>Save log file..</h4>
    <div>
        If you want to save a log file with detailed information of the convert, tick this field.
    </div>

</div>


<div id="lang">

    <h3>Language editor</h3>

    <div>
        The language editor is used to translate FFQueue's internal UI language to another languages.
        Please be carefull not to modify any of the <a href="http://www.cplusplus.com/reference/cstdio/printf/"
        target="_blank">standard C++ formatting specifiers (<b>%<i>x</i></b>)</a> as this would most
        likely cause FFQueue to crash.
    </div>

    <div>
        Translations are always loaded from and saved to a file named "FFQueue.lng" which will be
        located in the same folder where FFQueue[.exe] is located. The file will be saved when you exit
        FFQueue (if any changes have been made).
    </div>

    <h4>Language information</h4>
    <div>
        The description is used to show information and credentials for the language in the about box.
        The password fields can be used to define a password that is required for subsequent modifications
        of the language (in order to prevent others from stealing the credentials for the language).
    </div>

    <h4>String list</h4>
    <div>
        The list displays all the strings used by FFQueue. The ID-column is the internal reference number,
        the Status-column displays one of the following values:
        <ul>
            <li><b>New</b> a new string that has not been accepted or translated is used.</li>
            <li><b>Internal</b> an internal, untranslated value is accepted to be used.</li>
            <li><b>Translated</b> a valid, translated value is used.</li>
            <li><b>Modified</b> a translation is made but the internal value has changed since translation.</li>
        </ul>
        The Content-column displays the string value used with this language.
    </div>

    <h4>Edit selected string</h4>
    <div>
        In this text field you can edit the content of the selected string or string array. AGAIN: Be
        ever so carefull NOT to disturb the C formatting specifiers! While in the editor you can use
        the following hot key combinations to ease the translation process:
        <ul>
            <li><b>[Ctrl]+[Arrow up]</b> go to previous item, discarding any changes made.</li>
            <li><b>[Ctrl]+[Arrow down]</b> go to next item, discarding any changes made.</li>
            <li><b>[Ctrl]+[Enter]</b> store changes and go to next new item.</li>
            <li><b>[Ctrl]+[S]</b> store changes but do not change item.</li>
            <li><b>[Ctrl]+[I]</b> load the internal value of the item.</li>
        </ul>
        If you want to reload the translated value you can use [Ctrl]+[Arrow] up &amp; down to discard
        and reload. The character "|" is not allowed in strings since it is used to separate string
        arrays. String arrays will be edited with one line per item and the number of items cannot be
        modified.
    </div>

</div>


    </div>

    <div class="content" style="text-align:center;color:#555555;margin-bottom:20px;">
        <small>
            Copyright &copy; by Torben Bruchhaus - Be fair, don't steal!<br />
            
        </small>
    </div>

</body>
</html>
